Tipos primitivos...
Tipo inteiro:
5 integer

Tipo String:
5 string

Tipo Double:
5.4 double


Casting...
Cast : int para double:
5 integer
5 double

Cast : int para string:
5 integer
5 string

Cast : double para string:
5.4 double
5.4 string

Cast : string nulo para boolean:
string
boolean
Tecnicamente boolean deveria ser true ou false mas retornou vazio.
mas em PHP true=1 e false=vazio.



Casting com arredondamento...
double para int:
5.47 double
5 integer

string double para int:
5.47 string
5 integer

string double para int com retorno zero pois não há números:
ABC string
0 integer

string para boolean:True
Neste caso se o valor da variável é válido para a conversão retorna true
ABC string
1 boolean

string para boolean:False
Neste caso se o valor da variável é inválido para a conversão retorna vazio
string
boolean


Casting com boolean...
boolean true para string:
1 boolean
1 string

boolean false para string:
boolean
stringBoolean:1=true,vazio=false.


boolean true para inteiro:
1 boolean
1 integer

boolean false para int:
boolean
0 integerBoolean:1=true,vazio=false.